package Servidor.Clases;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;

public class Medida {
	private Date fecha;
	private String latitud;
	private String longitud;
	private int valor;
	//sensor que ha realizado la medida:
	private Sensor sensor;
	
	public Medida(Sensor sensor, String latitud, String longitud)
	{
		this.sensor=sensor;
		valor=new Random().nextInt(100);
		fecha= new Date();
		this.latitud=latitud;
		this.longitud=longitud;
		
	}

	public Medida(Date fecha, String latitud, String longitud, int valor,Sensor sensor) {
		this.fecha = fecha;
		this.latitud = latitud;
		this.longitud = longitud;
		this.valor = valor;
		this.sensor=sensor;
	}

	public Medida(long valor, Sensor sens) {
		super();
		this.valor = (int) valor;
		this.sensor=sens;
	}

	public Date getFecha() {
		return fecha;
	}

	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}

	public String getLatitud() {
		return latitud;
	}

	public void setLatitud(String latitud) {
		this.latitud = latitud;
	}

	public String getLongitud() {
		return longitud;
	}

	public void setLongitud(String longitud) {
		this.longitud = longitud;
	}

	public int getValor() {
		return valor;
	}

	public void setValor(int valor) {
		this.valor = valor;
	}

	public void setValor(long valor) {
		this.valor = (int) valor;
	}

	public Sensor getSensor() {
		return sensor;
	}

	public void setSensor(Sensor sensor) {
		this.sensor = sensor;
	}
	
	/**
	 * Combierte la fecha a un string con el siguiente formato:
	 * dd/mm/yyyy;HH;mm:ss
	 * @return String reprensentando la fecha
	 */
	public String stringFecha()
	{
		String cadenaFecha="";
		SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
		cadenaFecha+=formato.format(fecha)+";";
		formato = new SimpleDateFormat("H:mm:ss");
		cadenaFecha+=formato.format(fecha);
		return cadenaFecha;
	}
	
	/**
	 * Metodo que devuelve las coordenadas como un unico string con el siguiente formato:
	 * latitud-longitud
	 * @return cadena que representa las coordenadas
	 */
	public String stringCoordenadas(){
		String coordenadas=latitud+"-"+longitud;
		return coordenadas;
	}
	
	
}
